package org.jsola.hr.dao;

import org.apache.ibatis.annotations.Param;
import org.jsola.hr.dto.NewsInfoUpdateDTO;
import org.jsola.hr.entity.NewsTypeDO;
import org.jsola.hr.query.NewsTypeQuery;
import org.jsola.hr.vo.NewsTypeListVO;
import org.jsola.orm.mapper.IJsolaMapper;
import org.springframework.stereotype.Repository;

import java.util.List;


/**
 * 官网信息的类型
 *
 * @author zhr
 */
@Repository("hrNewsTypeDAO")
public interface INewsTypeDAO extends IJsolaMapper<NewsTypeDO> {

    /**
     * 根据code和类型查询新闻列表
     * @param newsTypeQuery 参数
     * @param siteId 站点Id
     * @return 结果
     */
    List<NewsTypeListVO> selectNewsType(@Param(value = "newsTypeQuery") NewsTypeQuery newsTypeQuery);

    /**
     * 根据id修改type状态
     * @param List 参数list
     * @return 结果
     */
    Integer updateTypeById(List<String> List);

    /**
     * 根据typeId修改info表状态
     * @param List 参数
     * @return 返回结果
     */
    Integer updateInfoById(List<String> List);

    /**
     * 根据id修改标题
     * @param name 标题
     * @param id 主键id
     * @return
     */
    Integer updateTypeNameById(@Param(value = "name")String name, @Param(value = "id")String id);

    /**
     * 修改新闻具体内容
     * @param newsInfoUpdateDTO 请求参数
     * @return 返回结果
     */
    Integer updateInfoBeanById(@Param(value = "newsInfoUpdateDTO")NewsInfoUpdateDTO newsInfoUpdateDTO);

    /**
     * 根据type表id查找info表id
     * @param id
     * @return
     */
    String selectInfoByTypeId(String id);

    /**
     * 根据news_info_id修改文件状态
     * @param newsInfoId id
     * @return
     */
    Integer updateFileByNewsInfoId(String newsInfoId);
}

